#include<iostream>
#include<vector>
#include<random>
#include<iomanip>
#include<fstream>
using namespace std;

class TestCase {
public:
    int R, L, C, V, I, loops, shorts;
    bool open;
};


TestCase generate_test() {
    random_device rd;
    mt19937 gen(rd());
    
    uniform_int_distribution<int> bool_dist(0, 1);
    uniform_int_distribution<int> short_dist(0, 10);
    uniform_int_distribution<int> loop_dist(0, 20);
    uniform_int_distribution<int> sc_dist(0, 30);
    uniform_int_distribution<int> comp_dist(0, 50);

    TestCase tc;
        
    tc.shorts = short_dist(gen);
    tc.loops = loop_dist(gen);
    tc.open = bool_dist(gen);
        
    tc.V = sc_dist(gen);
        
    tc.I = sc_dist(gen);
        
    tc.R = comp_dist(gen);
    tc.L = comp_dist(gen);
    tc.C = comp_dist(gen);
        
    return tc;
}


int main() {
	ofstream outfile;
	outfile.open("netlistConfig");
    TestCase tc = generate_test();
    outfile<<"nVoltS\t"<<tc.V<<endl;
    outfile<<"nCurrS\t"<<tc.I<<endl;
    outfile<<"nR\t"<<tc.R<<endl;
    outfile<<"nC\t"<<tc.C<<endl;
    outfile<<"nL\t"<<tc.L<<endl;
    outfile<<"nLoop\t"<<tc.loops<<endl;
    outfile<<"nShort\t"<<tc.shorts<<endl;
    outfile<<"bOpen\t"<<tc.open<<endl;
    
    outfile.close();

    return 0;
}
